package settings

import (
	"github.com/go-ini/ini"
)

// 数据库配置
type database struct {
	Host             string // 主机地址
	Port             int    // 主机端口
	InitDatabaseName string // 初始数据库名称
	Username         string // 用户名
	Password         string // 密码
	SSLMode          string // SSL模式
	Schema           string // 模式
	TableNamePre     string // 表名前缀，比如t_users中的t_
	TableNameSplit   string // 表名多个单词时，比如t_users_roles中的第二个_
	ColumnNamePre    string // 字段前缀，比如f_create_time中的f_
	ColumnNameSplit  string // 字段名多个单词时，比如f_create_time中的第二个_
}

var DatabaseSetting = &database{}

func init() {
	// 加载配置文件ini
	cfg, err := ini.Load("configs/database.ini")
	if err != nil {
		return
	}
	// 映射配置
	_ = cfg.Section("database").MapTo(DatabaseSetting)
}
